package org.jeecg.modules.hotel.arrangement.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * TODO
 *
 * @author CSD
 * @date 2021-04-27 15:53
 */
@Data
@ApiModel(value="导入床位实体类", description="导入床位实体类")
public class StuHotelRoster implements Serializable {

    @Excel(name = "校区", width = 15)
    @ApiModelProperty(value = "校区名称")
    private String campusName;

    @Excel(name = "楼宇", width = 15)
    @ApiModelProperty(value = "楼宇名称")
    private String buildingName;

    /**单元*/
    @Excel(name = "单元", width = 15)
    @ApiModelProperty(value = "单元名称")
    private String unitName;
    /**楼层*/
    @Excel(name = "楼层", width = 15)
    @ApiModelProperty(value = "楼层名称")
    private String layerName;
    /**房间*/
    @Excel(name = "房间", width = 15)
    @ApiModelProperty(value = "房间名称")
    private String roomName;

/*    @Excel(name = "房间类型", width = 15)
    @ApiModelProperty(value = "房间类型")
    private String roomType;*/

    @Excel(name = "房间朝向", width = 15,replace = {"北_north","南_south","西_west","东_east"})
    @ApiModelProperty(value = "房间朝向")
    private String roomOrientation;

    @Dict(dicCode = "sex")
    @Excel(name = "房间性别", width = 15,replace = {"男_1","女_2"})
    @ApiModelProperty(value = "房间性别")
    private String roomSex;

    @Excel(name = "床位号",width = 15)
    @ApiModelProperty(value = "床位号")
    private String bedName;

    @Excel(name = "床位价格",width = 15)
    @ApiModelProperty(value = "床位价格")
    private String bedPrice;

    @Excel(name = "学生",width = 15)
    private String studentName;

    @Excel(name = "学号",width = 20)
    private String studentNumber;

//    @TableField(exist = false)
//    @Excel(name = "校区", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
//    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
//    private String studentCampus;

    @TableField(exist = false)
    @Excel(name = "学院", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    private String studentCollege;

    @TableField(exist = false)
    @Excel(name = "年级", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    private String studentYear;

    @TableField(exist = false)
    @Excel(name = "专业", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    private String studentMajor;

    @Excel(name = "班级", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    private String studentClass;

    @TableField(exist = false)
    @Excel(name = "学历", width = 15,dicCode = "student_education")
    @Dict(dicCode = "student_education")
    private String studentEducation;

    @TableField(exist = false)
    @Excel(name = "学制", width = 15,dicCode = "student_school_system")
    @Dict(dicCode = "student_school_system")
    private String studentSchoolSystem;

    /**离校时间*/
    @TableField(exist = false)
    @Excel(name = "离校时间", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "离校时间")
    private Date studentLeaveschool;

    private String studentId;

    private String bedId;

    @ApiModelProperty(value = "房间id")
    private String roomId;

    private String adminId;

    private String reason;

    private String beforeInfo;

    /** 2022.5.9,每日获取每人的剩余电量，用作导出毕业生的时候剩余电量的查询，调宿舍调电量等功能*/
    @Excel(name = "剩余收费电量",width = 15)
    @ApiModelProperty(value = "剩余收费电量")
    private String stateCharge;
    /** 2022.5.24,每日获取每人的免费电量的剩余电量*/
    @Excel(name = "剩余免费电量",width = 15)
    @ApiModelProperty(value = "剩余免费电量")
    private String stateFreeCharge;
    /** 更新剩余电量的时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "剩余电量更新时间")
    private Date chargeUpdateTime;

    /**学院名称*/
    @Excel(name = "学院", width = 15)
    @ApiModelProperty(value = "学院名称")
    private String collegeName;

    /**年级名称*/
    @Excel(name = "年级", width = 15)
    @ApiModelProperty(value = "年级名称")
    private String yearName;

    /**专业名称*/
    @Excel(name = "专业", width = 15)
    @ApiModelProperty(value = "专业名称")
    private String majorName;

    /**单元*/
    @Excel(name = "班级", width = 15)
    @ApiModelProperty(value = "班级名称")
    private String className;




}
